package FS_SFA_experiment;

import tsc_algorithms.FastShapelets;
import tsc_algorithms.FastShapeletsWithSFA;

public class FS_SFA_experiment {
	public static void main(String[] args) {
		testSensorReading();

	}
	
	public static void testSensorReading(){
		String[] problem={"Car","ChlorineConcentration", "Coffee", "Computers","Earthquakes","ItalyPowerDemand","Trace", "Wafer","MoteStrain","SonyAIBORobotSurface1", "SonyAIBORobotSurface2", "OliveOil","Plane"};
		System.out.println(problem.length);
		//FS
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapelets().test(problem[j]);
			System.out.println();
		}
		//FS-SFA
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapeletsWithSFA().test(problem[j]);
			System.out.println();
		}
		
	}
	public static void testHumanSensorReading(){
		String[] problem={"TwoLeadECG", "ECG5000", "ECGFiveDays" };
		System.out.println(problem.length);
		//FS
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapelets().test(problem[j]);
			System.out.println();
		}
		//FS-SFA
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapeletsWithSFA().test(problem[j]);
			System.out.println();
		}
		
	}
	public static void testMotion(){
		String[] problem={"CricketX", "CricketY", "CricketZ", "GunPoint","ToeSegmentation1", "ToeSegmentation2","Worms", "WormsTwoClass"  };
		System.out.println(problem.length);
		//FS
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapelets().test(problem[j]);
			System.out.println();
		}
		//FS-SFA
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapeletsWithSFA().test(problem[j]);
			System.out.println();
		}
		
	}
	
	public static void testSimulated(){
		String[] problem={"Mallat","CBF","SyntheticControl","TwoPatterns"   };
		System.out.println(problem.length);
		//FS
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapelets().test(problem[j]);
			System.out.println();
		}
		//FS-SFA
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapeletsWithSFA().test(problem[j]);
			System.out.println();
		}
		
	}
	public static void testImageOutline(){
		String[] problem={"DistalPhalanxOutlineAgeGroup", "DistalPhalanxOutlineCorrect", "DistalPhalanxTW","FaceFour","MiddlePhalanxOutlineAgeGroup", "MiddlePhalanxOutlineCorrect", "MiddlePhalanxTW", "OSULeaf", "Yoga","Herring", "MedicalImages","Symbols", "Adiac", "ArrowHead","BeetleFly", "DiatomSizeReduction","FacesUCR", "FiftyWords" };
		System.out.println(problem.length);
		//FS
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapelets().test(problem[j]);
			System.out.println();
		}
		//FS-SFA
		for (int j = 0; j < problem.length; j++) {
			System.out.print(problem[j] + "\t");
			new FastShapeletsWithSFA().test(problem[j]);
			System.out.println();
		}
		
	}
	
	
}
